<!-- HTML header for doxygen 1.8.20-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
	<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
	<meta http-equiv="X-UA-Compatible" content="IE=9"/>
	<meta name="generator" content="Doxygen 1.9.4"/>
	<meta name="viewport" content="width=device-width, initial-scale=1"/>
	<title>Raspberry Pi Pico SDK: include/hardware/pio.h File Reference</title>
	<!-- <link href="tabs.css" rel="stylesheet" type="text/css"/> -->
	<script type="text/javascript" src="jquery.js"></script>
	<script type="text/javascript" src="dynsections.js"></script>
	<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
	<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
    <link href="https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500&display=swap" rel="stylesheet">
	<link href="doxygen.css" rel="stylesheet" type="text/css" />
	<link href="normalise.css" rel="stylesheet" type="text/css"/>
<link href="main.css" rel="stylesheet" type="text/css"/>
<link href="styles.css" rel="stylesheet" type="text/css"/>
</head>
<body>
	<div class="navigation-mobile">
		<div class="logo--mobile">
			<a href="/"><img src="logo-mobile.svg" alt="Raspberry Pi"></a>
		</div>
		<div class="navigation-toggle">
			<span class="line-1"></span>
			<span class="line-2">
				<p>Menu Toggle</p>
			</span>
			<span class="line-3"></span>
		</div>
	</div>
	<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
		<div class="logo">
			<a href="index.html"> <img src="logo.svg" alt="Raspberry Pi"></a>
			<span style="display: inline-block; margin-top: 10px;">
				v2.0.0
			</span>
		</div>
		<div class="navigation-footer">
			<img src="logo-mobile.svg" alt="Raspberry Pi">
			<a href="https://www.raspberrypi.com/" target="_blank">By Raspberry Pi Ltd</a>
		</div>
<!-- 		<div class="search">
			<form>
				<input type="search" name="search" id="search" placeholder="Search">
				<input type="submit" value="Search">
			</form>
		</div> -->
<!-- Generated by Doxygen 1.9.4 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('rp2__common_2hardware__pio_2include_2hardware_2pio_8h.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#define-members">Macros</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle"><div class="title">pio.h File Reference</div></div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &quot;<a class="el" href="pico_8h_source.html">pico.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="address__mapped_8h_source.html">hardware/address_mapped.h</a>&quot;</code><br />
<code>#include &quot;hardware/structs/pio.h&quot;</code><br />
<code>#include &quot;<a class="el" href="gpio_8h_source.html">hardware/gpio.h</a>&quot;</code><br />
<code>#include &quot;hardware/regs/dreq.h&quot;</code><br />
<code>#include &quot;hardware/pio_instructions.h&quot;</code><br />
</div><div class="textblock"><div class="dynheader">
Include dependency graph for pio.h:</div>
<div class="dyncontent">
<div class="center"><img src="rp2__common_2hardware__pio_2include_2hardware_2pio_8h__incl.png" border="0" usemap="#ainclude_2hardware_2pio_8h" alt=""/></div>
<map name="ainclude_2hardware_2pio_8h" id="ainclude_2hardware_2pio_8h">
<area shape="rect" title=" " alt="" coords="812,5,983,32"/>
<area shape="rect" href="pico_8h.html" title=" " alt="" coords="877,468,939,495"/>
<area shape="rect" href="address__mapped_8h.html" title=" " alt="" coords="5,393,216,420"/>
<area shape="rect" title=" " alt="" coords="754,80,921,107"/>
<area shape="rect" href="gpio_8h.html" title=" " alt="" coords="578,80,705,107"/>
<area shape="rect" title=" " alt="" coords="996,80,1156,107"/>
<area shape="rect" href="pio__instructions_8h_source.html" title=" " alt="" coords="1044,244,1247,271"/>
<area shape="rect" href="common_2pico__base__headers_2include_2pico_2types_8h_source.html" title=" " alt="" coords="711,692,812,719"/>
<area shape="rect" title=" " alt="" coords="530,543,643,569"/>
<area shape="rect" href="common_2pico__base__headers_2include_2pico_2config_8h_source.html" title=" " alt="" coords="1073,543,1177,569"/>
<area shape="rect" href="platform_8h.html" title=" " alt="" coords="667,543,789,569"/>
<area shape="rect" href="error_8h_source.html" title=" " alt="" coords="861,543,955,569"/>
<area shape="rect" href="assert_8h_source.html" title=" " alt="" coords="557,767,662,793"/>
<area shape="rect" title=" " alt="" coords="625,841,708,868"/>
<area shape="rect" title=" " alt="" coords="762,767,833,793"/>
<area shape="rect" title=" " alt="" coords="857,767,932,793"/>
<area shape="rect" title=" " alt="" coords="1059,617,1223,644"/>
<area shape="rect" href="compiler_8h_source.html" title=" " alt="" coords="240,617,421,644"/>
<area shape="rect" href="sections_8h_source.html" title=" " alt="" coords="445,617,624,644"/>
<area shape="rect" href="panic_8h_source.html" title=" " alt="" coords="648,617,808,644"/>
<area shape="rect" title=" " alt="" coords="5,617,216,644"/>
<area shape="rect" title=" " alt="" coords="833,617,983,644"/>
<area shape="rect" title=" " alt="" coords="235,692,426,719"/>
<area shape="rect" title=" " alt="" coords="342,162,509,189"/>
<area shape="rect" title=" " alt="" coords="533,155,699,196"/>
<area shape="rect" title=" " alt="" coords="724,155,871,196"/>
<area shape="rect" href="irq_8h.html" title=" " alt="" coords="202,162,318,189"/>
<area shape="rect" title=" " alt="" coords="555,244,725,271"/>
<area shape="rect" href="cpu__regs_8h_source.html" title=" " alt="" coords="349,244,531,271"/>
<area shape="rect" title=" " alt="" coords="437,393,597,420"/>
<area shape="rect" href="m33_8h_source.html" title=" " alt="" coords="249,319,425,345"/>
<area shape="rect" title=" " alt="" coords="450,319,625,345"/>
<area shape="rect" title=" " alt="" coords="701,319,870,345"/>
</map>
</div>
</div>
<p><a href="rp2__common_2hardware__pio_2include_2hardware_2pio_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structpio__sm__config.html">pio_sm_config</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">PIO Configuration structure.  <a href="structpio__sm__config.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structpio__program.html">pio_program</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="define-members" name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:a636012736576320587b3f5c284e518b4"><td class="memItemLeft" align="right" valign="top"><a id="a636012736576320587b3f5c284e518b4" name="a636012736576320587b3f5c284e518b4"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>PARAM_ASSERTIONS_ENABLED_HARDWARE_PIO</b>&#160;&#160;&#160;0</td></tr>
<tr class="separator:a636012736576320587b3f5c284e518b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a790af66b1a8486a21fc9ac34607d5832"><td class="memItemLeft" align="right" valign="top"><a id="a790af66b1a8486a21fc9ac34607d5832" name="a790af66b1a8486a21fc9ac34607d5832"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>PICO_PIO_VERSION</b>&#160;&#160;&#160;0</td></tr>
<tr class="separator:a790af66b1a8486a21fc9ac34607d5832"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga916d05e71da7f2173cd22b46bbfa0a11"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga916d05e71da7f2173cd22b46bbfa0a11">pio0</a>&#160;&#160;&#160;pio0_hw</td></tr>
<tr class="separator:ga916d05e71da7f2173cd22b46bbfa0a11"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga923a261ba19804c404900228e99c9522"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga923a261ba19804c404900228e99c9522">pio1</a>&#160;&#160;&#160;pio1_hw</td></tr>
<tr class="separator:ga923a261ba19804c404900228e99c9522"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga79fcbff988c01df8285f05ce6ad3a86d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga79fcbff988c01df8285f05ce6ad3a86d">PIO_NUM</a>(pio)</td></tr>
<tr class="memdesc:ga79fcbff988c01df8285f05ce6ad3a86d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the PIO number for a PIO instance.  <a href="group__hardware__pio.html#ga79fcbff988c01df8285f05ce6ad3a86d">More...</a><br /></td></tr>
<tr class="separator:ga79fcbff988c01df8285f05ce6ad3a86d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga06134c14db82b7927d96faeb07ab0e8b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga06134c14db82b7927d96faeb07ab0e8b">PIO_INSTANCE</a>(instance)</td></tr>
<tr class="memdesc:ga06134c14db82b7927d96faeb07ab0e8b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the PIO instance with the given PIO number.  <a href="group__hardware__pio.html#ga06134c14db82b7927d96faeb07ab0e8b">More...</a><br /></td></tr>
<tr class="separator:ga06134c14db82b7927d96faeb07ab0e8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa26de7b3ef34fb86138bf376ab152577"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#gaa26de7b3ef34fb86138bf376ab152577">PIO_FUNCSEL_NUM</a>(pio,  gpio)</td></tr>
<tr class="memdesc:gaa26de7b3ef34fb86138bf376ab152577"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns <a class="el" href="group__hardware__gpio.html#ga89b8e5e8a9c515260dea8d1fa96e72c9">gpio_function_t</a> needed to select the PIO function for the given PIO instance on the given GPIO.  <a href="group__hardware__pio.html#gaa26de7b3ef34fb86138bf376ab152577">More...</a><br /></td></tr>
<tr class="separator:gaa26de7b3ef34fb86138bf376ab152577"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab9eca729acb2cebdb1abb7793d0f5bdf"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#gab9eca729acb2cebdb1abb7793d0f5bdf">PIO_DREQ_NUM</a>(pio,  sm,  is_tx)</td></tr>
<tr class="memdesc:gab9eca729acb2cebdb1abb7793d0f5bdf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the <a class="el" href="group__hardware__dma.html#ga8def0ea481095c94f3a0dd0b4fed999e">dreq_num_t</a> used for pacing DMA transfers to or from a given state machine's FIFOs on this PIO instance. If is_tx is true, then it is for transfers to the PIO state machine TX FIFO else for transfers from the PIO state machine RX FIFO.  <a href="group__hardware__pio.html#gab9eca729acb2cebdb1abb7793d0f5bdf">More...</a><br /></td></tr>
<tr class="separator:gab9eca729acb2cebdb1abb7793d0f5bdf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaeb939c4541517980acf9de3ae4010624"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#gaeb939c4541517980acf9de3ae4010624">PIO_IRQ_NUM</a>(pio,  irqn)</td></tr>
<tr class="memdesc:gaeb939c4541517980acf9de3ae4010624"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the <a class="el" href="group__hardware__irq.html#gaf30862f51b5994ffd5863176a185d137">irq_num_t</a> for processor interrupts from the given PIO instance.  <a href="group__hardware__pio.html#gaeb939c4541517980acf9de3ae4010624">More...</a><br /></td></tr>
<tr class="separator:gaeb939c4541517980acf9de3ae4010624"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="typedef-members" name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:a7a8b2b0f22f858bff47f0b7e2c727f3f"><td class="memItemLeft" align="right" valign="top"><a id="a7a8b2b0f22f858bff47f0b7e2c727f3f" name="a7a8b2b0f22f858bff47f0b7e2c727f3f"></a>
typedef <a class="el" href="structpio__hw__t.html">pio_hw_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>PIO</b></td></tr>
<tr class="separator:a7a8b2b0f22f858bff47f0b7e2c727f3f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4e7cba9478a0cc1d3d9c508bd115b947"><td class="memItemLeft" align="right" valign="top"><a id="a4e7cba9478a0cc1d3d9c508bd115b947" name="a4e7cba9478a0cc1d3d9c508bd115b947"></a>
typedef struct <a class="el" href="structpio__program.html">pio_program</a>&#160;</td><td class="memItemRight" valign="bottom"><b>pio_program_t</b></td></tr>
<tr class="separator:a4e7cba9478a0cc1d3d9c508bd115b947"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab9e9aed4bb165a040415ae342e0902fe"><td class="memItemLeft" align="right" valign="top">
typedef enum <a class="el" href="group__hardware__pio.html#ga0e60c768ea29f296b5ef40c02211bbcc">pio_interrupt_source</a>&#160;</td><td class="memItemRight" valign="bottom"><b>pio_interrupt_source_t</b></td></tr>
<tr class="memdesc:gab9e9aed4bb165a040415ae342e0902fe"><td class="mdescLeft">&#160;</td><td class="mdescRight">PIO interrupt source numbers for pio related IRQs. <br /></td></tr>
<tr class="separator:gab9e9aed4bb165a040415ae342e0902fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="enum-members" name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:ga7d415b966abbc1c25315d0775d093356"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga7d415b966abbc1c25315d0775d093356">pio_fifo_join</a> { <a class="el" href="group__hardware__pio.html#gga7d415b966abbc1c25315d0775d093356a1ecaeaf5a3d81338a276b30f019b05c4">PIO_FIFO_JOIN_NONE</a> = 0
, <a class="el" href="group__hardware__pio.html#gga7d415b966abbc1c25315d0775d093356a22a2cbf467019804e134a38d40249f50">PIO_FIFO_JOIN_TX</a> = 1
, <a class="el" href="group__hardware__pio.html#gga7d415b966abbc1c25315d0775d093356ab2cff7409baac4928fec469fe5b44ed0">PIO_FIFO_JOIN_RX</a> = 2
 }</td></tr>
<tr class="memdesc:ga7d415b966abbc1c25315d0775d093356"><td class="mdescLeft">&#160;</td><td class="mdescRight">FIFO join states.  <a href="group__hardware__pio.html#ga7d415b966abbc1c25315d0775d093356">More...</a><br /></td></tr>
<tr class="separator:ga7d415b966abbc1c25315d0775d093356"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga356b3f4974cd31fdc4a2de381aceea5e"><td class="memItemLeft" align="right" valign="top"><a id="ga356b3f4974cd31fdc4a2de381aceea5e" name="ga356b3f4974cd31fdc4a2de381aceea5e"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga356b3f4974cd31fdc4a2de381aceea5e">pio_mov_status_type</a> { <b>STATUS_TX_LESSTHAN</b> = 0
, <b>STATUS_RX_LESSTHAN</b> = 1
 }</td></tr>
<tr class="memdesc:ga356b3f4974cd31fdc4a2de381aceea5e"><td class="mdescLeft">&#160;</td><td class="mdescRight">MOV status types. <br /></td></tr>
<tr class="separator:ga356b3f4974cd31fdc4a2de381aceea5e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0e60c768ea29f296b5ef40c02211bbcc"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga0e60c768ea29f296b5ef40c02211bbcc">pio_interrupt_source</a> { <br />
&#160;&#160;<a class="el" href="group__hardware__pio.html#gga0e60c768ea29f296b5ef40c02211bbcca23610bee821f3f8fecbfad0e48c6d742">pis_interrupt0</a> = PIO_INTR_SM0_LSB
, <a class="el" href="group__hardware__pio.html#gga0e60c768ea29f296b5ef40c02211bbcca6cd394d2b05ae5eec188d5283d16dc49">pis_interrupt1</a> = PIO_INTR_SM1_LSB
, <a class="el" href="group__hardware__pio.html#gga0e60c768ea29f296b5ef40c02211bbcca066e1cafa42ed6638c93cc09c9b1a0d4">pis_interrupt2</a> = PIO_INTR_SM2_LSB
, <a class="el" href="group__hardware__pio.html#gga0e60c768ea29f296b5ef40c02211bbcca94cf23106019a84873d6db52d1e8470f">pis_interrupt3</a> = PIO_INTR_SM3_LSB
, <br />
&#160;&#160;<a class="el" href="group__hardware__pio.html#gga0e60c768ea29f296b5ef40c02211bbcca924b2a1d4b6d257ac13608729dcf9ee1">pis_sm0_tx_fifo_not_full</a> = PIO_INTR_SM0_TXNFULL_LSB
, <a class="el" href="group__hardware__pio.html#gga0e60c768ea29f296b5ef40c02211bbcca27452b43a8d5d40ab0ba25a195681d48">pis_sm1_tx_fifo_not_full</a> = PIO_INTR_SM1_TXNFULL_LSB
, <a class="el" href="group__hardware__pio.html#gga0e60c768ea29f296b5ef40c02211bbcca214d3bdb6ebc516c4094c4eb476d514d">pis_sm2_tx_fifo_not_full</a> = PIO_INTR_SM2_TXNFULL_LSB
, <a class="el" href="group__hardware__pio.html#gga0e60c768ea29f296b5ef40c02211bbcca463c09bec3151921a18be2c548e97297">pis_sm3_tx_fifo_not_full</a> = PIO_INTR_SM3_TXNFULL_LSB
, <br />
&#160;&#160;<a class="el" href="group__hardware__pio.html#gga0e60c768ea29f296b5ef40c02211bbcca959e0b9e484719a0af543fb87a365d52">pis_sm0_rx_fifo_not_empty</a> = PIO_INTR_SM0_RXNEMPTY_LSB
, <a class="el" href="group__hardware__pio.html#gga0e60c768ea29f296b5ef40c02211bbcca85ee2774a8e5dfaf61d3866a81cb381c">pis_sm1_rx_fifo_not_empty</a> = PIO_INTR_SM1_RXNEMPTY_LSB
, <a class="el" href="group__hardware__pio.html#gga0e60c768ea29f296b5ef40c02211bbcca6d7f4a904cb634fd3f30f033874393ac">pis_sm2_rx_fifo_not_empty</a> = PIO_INTR_SM2_RXNEMPTY_LSB
, <a class="el" href="group__hardware__pio.html#gga0e60c768ea29f296b5ef40c02211bbccaacce0dbc391b9bb05965b7bc1b6f7698">pis_sm3_rx_fifo_not_empty</a> = PIO_INTR_SM3_RXNEMPTY_LSB
<br />
 }</td></tr>
<tr class="memdesc:ga0e60c768ea29f296b5ef40c02211bbcc"><td class="mdescLeft">&#160;</td><td class="mdescRight">PIO interrupt source numbers for pio related IRQs.  <a href="group__hardware__pio.html#ga0e60c768ea29f296b5ef40c02211bbcc">More...</a><br /></td></tr>
<tr class="separator:ga0e60c768ea29f296b5ef40c02211bbcc"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ae81cc92d77f8d8ca8d675c393376c7af"><td class="memItemLeft" align="right" valign="top"><a id="ae81cc92d77f8d8ca8d675c393376c7af" name="ae81cc92d77f8d8ca8d675c393376c7af"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><b>check_sm_param</b> (__unused uint sm)</td></tr>
<tr class="separator:ae81cc92d77f8d8ca8d675c393376c7af"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af74d5e2cdd4684192e768a2414a64c39"><td class="memItemLeft" align="right" valign="top"><a id="af74d5e2cdd4684192e768a2414a64c39" name="af74d5e2cdd4684192e768a2414a64c39"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><b>check_sm_mask</b> (__unused uint mask)</td></tr>
<tr class="separator:af74d5e2cdd4684192e768a2414a64c39"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a006601f2c642f4708b1bd7849b7b8fc0"><td class="memItemLeft" align="right" valign="top"><a id="a006601f2c642f4708b1bd7849b7b8fc0" name="a006601f2c642f4708b1bd7849b7b8fc0"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><b>check_pio_param</b> (__unused <a class="el" href="structpio__hw__t.html">PIO</a> pio)</td></tr>
<tr class="separator:a006601f2c642f4708b1bd7849b7b8fc0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a526d2364d8f16ff98eb369cf8b0fac61"><td class="memItemLeft" align="right" valign="top"><a id="a526d2364d8f16ff98eb369cf8b0fac61" name="a526d2364d8f16ff98eb369cf8b0fac61"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><b>check_pio_pin_param</b> (__unused uint pin)</td></tr>
<tr class="separator:a526d2364d8f16ff98eb369cf8b0fac61"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1dbca28933c083592e6e359effe250bf"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sm__config.html#ga1dbca28933c083592e6e359effe250bf">sm_config_set_out_pin_base</a> (<a class="el" href="structpio__sm__config.html">pio_sm_config</a> *c, uint out_base)</td></tr>
<tr class="memdesc:ga1dbca28933c083592e6e359effe250bf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the base of the 'out' pins in a state machine configuration.  <a href="group__sm__config.html#ga1dbca28933c083592e6e359effe250bf">More...</a><br /></td></tr>
<tr class="separator:ga1dbca28933c083592e6e359effe250bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gade3d072e319fc7d10bec180a9692ea89"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sm__config.html#gade3d072e319fc7d10bec180a9692ea89">sm_config_set_out_pin_count</a> (<a class="el" href="structpio__sm__config.html">pio_sm_config</a> *c, uint out_count)</td></tr>
<tr class="memdesc:gade3d072e319fc7d10bec180a9692ea89"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the number of 'out' pins in a state machine configuration.  <a href="group__sm__config.html#gade3d072e319fc7d10bec180a9692ea89">More...</a><br /></td></tr>
<tr class="separator:gade3d072e319fc7d10bec180a9692ea89"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf3004bbd996443d0c841664ebc92905c"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sm__config.html#gaf3004bbd996443d0c841664ebc92905c">sm_config_set_out_pins</a> (<a class="el" href="structpio__sm__config.html">pio_sm_config</a> *c, uint out_base, uint out_count)</td></tr>
<tr class="memdesc:gaf3004bbd996443d0c841664ebc92905c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the 'out' pins in a state machine configuration.  <a href="group__sm__config.html#gaf3004bbd996443d0c841664ebc92905c">More...</a><br /></td></tr>
<tr class="separator:gaf3004bbd996443d0c841664ebc92905c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga40d4807c0665d30ceab153b7444560eb"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sm__config.html#ga40d4807c0665d30ceab153b7444560eb">sm_config_set_set_pin_base</a> (<a class="el" href="structpio__sm__config.html">pio_sm_config</a> *c, uint set_base)</td></tr>
<tr class="memdesc:ga40d4807c0665d30ceab153b7444560eb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the base of the 'set' pins in a state machine configuration.  <a href="group__sm__config.html#ga40d4807c0665d30ceab153b7444560eb">More...</a><br /></td></tr>
<tr class="separator:ga40d4807c0665d30ceab153b7444560eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga78e129fe383f2af0fc5e1448dea4c3d6"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sm__config.html#ga78e129fe383f2af0fc5e1448dea4c3d6">sm_config_set_set_pin_count</a> (<a class="el" href="structpio__sm__config.html">pio_sm_config</a> *c, uint set_count)</td></tr>
<tr class="memdesc:ga78e129fe383f2af0fc5e1448dea4c3d6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the count of 'set' pins in a state machine configuration.  <a href="group__sm__config.html#ga78e129fe383f2af0fc5e1448dea4c3d6">More...</a><br /></td></tr>
<tr class="separator:ga78e129fe383f2af0fc5e1448dea4c3d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gada1dff2c00b7d3a1cf722880c8373424"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sm__config.html#gada1dff2c00b7d3a1cf722880c8373424">sm_config_set_set_pins</a> (<a class="el" href="structpio__sm__config.html">pio_sm_config</a> *c, uint set_base, uint set_count)</td></tr>
<tr class="memdesc:gada1dff2c00b7d3a1cf722880c8373424"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the 'set' pins in a state machine configuration.  <a href="group__sm__config.html#gada1dff2c00b7d3a1cf722880c8373424">More...</a><br /></td></tr>
<tr class="separator:gada1dff2c00b7d3a1cf722880c8373424"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaaf804a05a2ebaa127d0d216b3d4e3e80"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sm__config.html#gaaf804a05a2ebaa127d0d216b3d4e3e80">sm_config_set_in_pin_base</a> (<a class="el" href="structpio__sm__config.html">pio_sm_config</a> *c, uint in_base)</td></tr>
<tr class="memdesc:gaaf804a05a2ebaa127d0d216b3d4e3e80"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the base of the 'in' pins in a state machine configuration.  <a href="group__sm__config.html#gaaf804a05a2ebaa127d0d216b3d4e3e80">More...</a><br /></td></tr>
<tr class="separator:gaaf804a05a2ebaa127d0d216b3d4e3e80"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac418400e30520ea3961d8977c180a4f9"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sm__config.html#gac418400e30520ea3961d8977c180a4f9">sm_config_set_in_pins</a> (<a class="el" href="structpio__sm__config.html">pio_sm_config</a> *c, uint in_base)</td></tr>
<tr class="memdesc:gac418400e30520ea3961d8977c180a4f9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the base fpr the 'in' pins in a state machine configuration.  <a href="group__sm__config.html#gac418400e30520ea3961d8977c180a4f9">More...</a><br /></td></tr>
<tr class="separator:gac418400e30520ea3961d8977c180a4f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a441e87022f2178c1c57d509da4aacb75"><td class="memItemLeft" align="right" valign="top"><a id="a441e87022f2178c1c57d509da4aacb75" name="a441e87022f2178c1c57d509da4aacb75"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><b>sm_config_set_in_pin_count</b> (<a class="el" href="structpio__sm__config.html">pio_sm_config</a> *c, uint in_count)</td></tr>
<tr class="separator:a441e87022f2178c1c57d509da4aacb75"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7abfda1f60c62565d5b13536b0605af7"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sm__config.html#ga7abfda1f60c62565d5b13536b0605af7">sm_config_set_sideset_pin_base</a> (<a class="el" href="structpio__sm__config.html">pio_sm_config</a> *c, uint sideset_base)</td></tr>
<tr class="memdesc:ga7abfda1f60c62565d5b13536b0605af7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the base of the 'sideset' pins in a state machine configuration.  <a href="group__sm__config.html#ga7abfda1f60c62565d5b13536b0605af7">More...</a><br /></td></tr>
<tr class="separator:ga7abfda1f60c62565d5b13536b0605af7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad55bf8b410fa1d13bd1bd020587e01d7"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sm__config.html#gad55bf8b410fa1d13bd1bd020587e01d7">sm_config_set_sideset_pins</a> (<a class="el" href="structpio__sm__config.html">pio_sm_config</a> *c, uint sideset_base)</td></tr>
<tr class="memdesc:gad55bf8b410fa1d13bd1bd020587e01d7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the 'sideset' pins in a state machine configuration.  <a href="group__sm__config.html#gad55bf8b410fa1d13bd1bd020587e01d7">More...</a><br /></td></tr>
<tr class="separator:gad55bf8b410fa1d13bd1bd020587e01d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf543422206a8dbdc2efea85818dd650e"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sm__config.html#gaf543422206a8dbdc2efea85818dd650e">sm_config_set_sideset</a> (<a class="el" href="structpio__sm__config.html">pio_sm_config</a> *c, uint bit_count, bool optional, bool pindirs)</td></tr>
<tr class="memdesc:gaf543422206a8dbdc2efea85818dd650e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the 'sideset' options in a state machine configuration.  <a href="group__sm__config.html#gaf543422206a8dbdc2efea85818dd650e">More...</a><br /></td></tr>
<tr class="separator:gaf543422206a8dbdc2efea85818dd650e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga365abc6d25301810ca5ee11e5b36c763"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sm__config.html#ga365abc6d25301810ca5ee11e5b36c763">sm_config_set_clkdiv_int_frac</a> (<a class="el" href="structpio__sm__config.html">pio_sm_config</a> *c, uint16_t div_int, uint8_t div_frac)</td></tr>
<tr class="memdesc:ga365abc6d25301810ca5ee11e5b36c763"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the state machine clock divider (from integer and fractional parts - 16:8) in a state machine configuration.  <a href="group__sm__config.html#ga365abc6d25301810ca5ee11e5b36c763">More...</a><br /></td></tr>
<tr class="separator:ga365abc6d25301810ca5ee11e5b36c763"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7b637e9eb009a1c0d0edc26b4487b3a8"><td class="memItemLeft" align="right" valign="top"><a id="a7b637e9eb009a1c0d0edc26b4487b3a8" name="a7b637e9eb009a1c0d0edc26b4487b3a8"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><b>pio_calculate_clkdiv_from_float</b> (float div, uint16_t *div_int, uint8_t *div_frac)</td></tr>
<tr class="separator:a7b637e9eb009a1c0d0edc26b4487b3a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae8c09c7a4372da95ad777faae51c5a24"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sm__config.html#gae8c09c7a4372da95ad777faae51c5a24">sm_config_set_clkdiv</a> (<a class="el" href="structpio__sm__config.html">pio_sm_config</a> *c, float div)</td></tr>
<tr class="memdesc:gae8c09c7a4372da95ad777faae51c5a24"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the state machine clock divider (from a floating point value) in a state machine configuration.  <a href="group__sm__config.html#gae8c09c7a4372da95ad777faae51c5a24">More...</a><br /></td></tr>
<tr class="separator:gae8c09c7a4372da95ad777faae51c5a24"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafb753e8b35bbea9209ca4399a845f89c"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sm__config.html#gafb753e8b35bbea9209ca4399a845f89c">sm_config_set_wrap</a> (<a class="el" href="structpio__sm__config.html">pio_sm_config</a> *c, uint wrap_target, uint wrap)</td></tr>
<tr class="memdesc:gafb753e8b35bbea9209ca4399a845f89c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the wrap addresses in a state machine configuration.  <a href="group__sm__config.html#gafb753e8b35bbea9209ca4399a845f89c">More...</a><br /></td></tr>
<tr class="separator:gafb753e8b35bbea9209ca4399a845f89c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf2bfc66d6427ff92519e38dcb611133b"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sm__config.html#gaf2bfc66d6427ff92519e38dcb611133b">sm_config_set_jmp_pin</a> (<a class="el" href="structpio__sm__config.html">pio_sm_config</a> *c, uint pin)</td></tr>
<tr class="memdesc:gaf2bfc66d6427ff92519e38dcb611133b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the 'jmp' pin in a state machine configuration.  <a href="group__sm__config.html#gaf2bfc66d6427ff92519e38dcb611133b">More...</a><br /></td></tr>
<tr class="separator:gaf2bfc66d6427ff92519e38dcb611133b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaed7a6e7dc4f1979c7c62e4773df8c79b"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sm__config.html#gaed7a6e7dc4f1979c7c62e4773df8c79b">sm_config_set_in_shift</a> (<a class="el" href="structpio__sm__config.html">pio_sm_config</a> *c, bool shift_right, bool autopush, uint push_threshold)</td></tr>
<tr class="memdesc:gaed7a6e7dc4f1979c7c62e4773df8c79b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Setup 'in' shifting parameters in a state machine configuration.  <a href="group__sm__config.html#gaed7a6e7dc4f1979c7c62e4773df8c79b">More...</a><br /></td></tr>
<tr class="separator:gaed7a6e7dc4f1979c7c62e4773df8c79b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga613bed03e10e569f1b7aede74d40a5b5"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sm__config.html#ga613bed03e10e569f1b7aede74d40a5b5">sm_config_set_out_shift</a> (<a class="el" href="structpio__sm__config.html">pio_sm_config</a> *c, bool shift_right, bool autopull, uint pull_threshold)</td></tr>
<tr class="memdesc:ga613bed03e10e569f1b7aede74d40a5b5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Setup 'out' shifting parameters in a state machine configuration.  <a href="group__sm__config.html#ga613bed03e10e569f1b7aede74d40a5b5">More...</a><br /></td></tr>
<tr class="separator:ga613bed03e10e569f1b7aede74d40a5b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafea1a06362182514518ebd91b2d52fd5"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sm__config.html#gafea1a06362182514518ebd91b2d52fd5">sm_config_set_fifo_join</a> (<a class="el" href="structpio__sm__config.html">pio_sm_config</a> *c, enum <a class="el" href="group__hardware__pio.html#ga7d415b966abbc1c25315d0775d093356">pio_fifo_join</a> join)</td></tr>
<tr class="memdesc:gafea1a06362182514518ebd91b2d52fd5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Setup the FIFO joining in a state machine configuration.  <a href="group__sm__config.html#gafea1a06362182514518ebd91b2d52fd5">More...</a><br /></td></tr>
<tr class="separator:gafea1a06362182514518ebd91b2d52fd5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8a9141ceadf9e735b1e96457865de3f6"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sm__config.html#ga8a9141ceadf9e735b1e96457865de3f6">sm_config_set_out_special</a> (<a class="el" href="structpio__sm__config.html">pio_sm_config</a> *c, bool sticky, bool has_enable_pin, uint enable_pin_index)</td></tr>
<tr class="memdesc:ga8a9141ceadf9e735b1e96457865de3f6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set special 'out' operations in a state machine configuration.  <a href="group__sm__config.html#ga8a9141ceadf9e735b1e96457865de3f6">More...</a><br /></td></tr>
<tr class="separator:ga8a9141ceadf9e735b1e96457865de3f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacd24870944ce2f00f3f7847bb3e5d543"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sm__config.html#gacd24870944ce2f00f3f7847bb3e5d543">sm_config_set_mov_status</a> (<a class="el" href="structpio__sm__config.html">pio_sm_config</a> *c, enum <a class="el" href="group__hardware__pio.html#ga356b3f4974cd31fdc4a2de381aceea5e">pio_mov_status_type</a> status_sel, uint status_n)</td></tr>
<tr class="memdesc:gacd24870944ce2f00f3f7847bb3e5d543"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set source for 'mov status' in a state machine configuration.  <a href="group__sm__config.html#gacd24870944ce2f00f3f7847bb3e5d543">More...</a><br /></td></tr>
<tr class="separator:gacd24870944ce2f00f3f7847bb3e5d543"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf2d2a23b08ba74188160469b3fd09936"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structpio__sm__config.html">pio_sm_config</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sm__config.html#gaf2d2a23b08ba74188160469b3fd09936">pio_get_default_sm_config</a> (void)</td></tr>
<tr class="memdesc:gaf2d2a23b08ba74188160469b3fd09936"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the default state machine configuration.  <a href="group__sm__config.html#gaf2d2a23b08ba74188160469b3fd09936">More...</a><br /></td></tr>
<tr class="separator:gaf2d2a23b08ba74188160469b3fd09936"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga89688fd1a941797cb0cc80dbbc4bbd5f"><td class="memItemLeft" align="right" valign="top">static uint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga89688fd1a941797cb0cc80dbbc4bbd5f">pio_get_gpio_base</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio)</td></tr>
<tr class="memdesc:ga89688fd1a941797cb0cc80dbbc4bbd5f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the base GPIO base for the PIO instance.  <a href="group__hardware__pio.html#ga89688fd1a941797cb0cc80dbbc4bbd5f">More...</a><br /></td></tr>
<tr class="separator:ga89688fd1a941797cb0cc80dbbc4bbd5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga28e9a84f3332ebf088f665d4b676117b"><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga28e9a84f3332ebf088f665d4b676117b">pio_sm_set_config</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm, const <a class="el" href="structpio__sm__config.html">pio_sm_config</a> *config)</td></tr>
<tr class="memdesc:ga28e9a84f3332ebf088f665d4b676117b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Apply a state machine configuration to a state machine.  <a href="group__hardware__pio.html#ga28e9a84f3332ebf088f665d4b676117b">More...</a><br /></td></tr>
<tr class="separator:ga28e9a84f3332ebf088f665d4b676117b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae86f691914b78d66b1394ae94f3f4aa6"><td class="memItemLeft" align="right" valign="top">static uint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#gae86f691914b78d66b1394ae94f3f4aa6">pio_get_index</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio)</td></tr>
<tr class="memdesc:gae86f691914b78d66b1394ae94f3f4aa6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the instance number of a PIO instance.  <a href="group__hardware__pio.html#gae86f691914b78d66b1394ae94f3f4aa6">More...</a><br /></td></tr>
<tr class="separator:gae86f691914b78d66b1394ae94f3f4aa6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9e150bfd3d43565a01f38a37fa2884d4"><td class="memItemLeft" align="right" valign="top">static uint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga9e150bfd3d43565a01f38a37fa2884d4">pio_get_funcsel</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio)</td></tr>
<tr class="memdesc:ga9e150bfd3d43565a01f38a37fa2884d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the funcsel number of a PIO instance.  <a href="group__hardware__pio.html#ga9e150bfd3d43565a01f38a37fa2884d4">More...</a><br /></td></tr>
<tr class="separator:ga9e150bfd3d43565a01f38a37fa2884d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga151f87205041da11d3c69be5ddbd5653"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structpio__hw__t.html">PIO</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga151f87205041da11d3c69be5ddbd5653">pio_get_instance</a> (uint instance)</td></tr>
<tr class="memdesc:ga151f87205041da11d3c69be5ddbd5653"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert PIO instance to hardware instance.  <a href="group__hardware__pio.html#ga151f87205041da11d3c69be5ddbd5653">More...</a><br /></td></tr>
<tr class="separator:ga151f87205041da11d3c69be5ddbd5653"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafa244b1be8f53a329db9d26298e054bb"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#gafa244b1be8f53a329db9d26298e054bb">pio_gpio_init</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint pin)</td></tr>
<tr class="memdesc:gafa244b1be8f53a329db9d26298e054bb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Setup the function select for a GPIO to use output from the given PIO instance.  <a href="group__hardware__pio.html#gafa244b1be8f53a329db9d26298e054bb">More...</a><br /></td></tr>
<tr class="separator:gafa244b1be8f53a329db9d26298e054bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4091eef7afda5200a3988b9412fe3b3f"><td class="memItemLeft" align="right" valign="top">static uint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga4091eef7afda5200a3988b9412fe3b3f">pio_get_dreq</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm, bool is_tx)</td></tr>
<tr class="memdesc:ga4091eef7afda5200a3988b9412fe3b3f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the DREQ to use for pacing transfers to/from a particular state machine FIFO.  <a href="group__hardware__pio.html#ga4091eef7afda5200a3988b9412fe3b3f">More...</a><br /></td></tr>
<tr class="separator:ga4091eef7afda5200a3988b9412fe3b3f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga332210f0e594b24bf64f4bb1c8f49be3"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga332210f0e594b24bf64f4bb1c8f49be3">pio_set_gpio_base</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint gpio_base)</td></tr>
<tr class="memdesc:ga332210f0e594b24bf64f4bb1c8f49be3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the base GPIO base for the PIO instance.  <a href="group__hardware__pio.html#ga332210f0e594b24bf64f4bb1c8f49be3">More...</a><br /></td></tr>
<tr class="separator:ga332210f0e594b24bf64f4bb1c8f49be3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa8aafe966a46f4de9be59f73cae65a4b"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#gaa8aafe966a46f4de9be59f73cae65a4b">pio_can_add_program</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, const <a class="el" href="structpio__program.html">pio_program_t</a> *program)</td></tr>
<tr class="memdesc:gaa8aafe966a46f4de9be59f73cae65a4b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determine whether the given program can (at the time of the call) be loaded onto the PIO instance.  <a href="group__hardware__pio.html#gaa8aafe966a46f4de9be59f73cae65a4b">More...</a><br /></td></tr>
<tr class="separator:gaa8aafe966a46f4de9be59f73cae65a4b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaafac789d94b0727bb02ea83a8786897f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#gaafac789d94b0727bb02ea83a8786897f">pio_can_add_program_at_offset</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, const <a class="el" href="structpio__program.html">pio_program_t</a> *program, uint offset)</td></tr>
<tr class="memdesc:gaafac789d94b0727bb02ea83a8786897f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determine whether the given program can (at the time of the call) be loaded onto the PIO instance starting at a particular location.  <a href="group__hardware__pio.html#gaafac789d94b0727bb02ea83a8786897f">More...</a><br /></td></tr>
<tr class="separator:gaafac789d94b0727bb02ea83a8786897f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaefbd086e8e96fee073438dac3c20334c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#gaefbd086e8e96fee073438dac3c20334c">pio_add_program</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, const <a class="el" href="structpio__program.html">pio_program_t</a> *program)</td></tr>
<tr class="memdesc:gaefbd086e8e96fee073438dac3c20334c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Attempt to load the program.  <a href="group__hardware__pio.html#gaefbd086e8e96fee073438dac3c20334c">More...</a><br /></td></tr>
<tr class="separator:gaefbd086e8e96fee073438dac3c20334c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga12948478935f817218b64e1db3a8ebad"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga12948478935f817218b64e1db3a8ebad">pio_add_program_at_offset</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, const <a class="el" href="structpio__program.html">pio_program_t</a> *program, uint offset)</td></tr>
<tr class="memdesc:ga12948478935f817218b64e1db3a8ebad"><td class="mdescLeft">&#160;</td><td class="mdescRight">Attempt to load the program at the specified instruction memory offset.  <a href="group__hardware__pio.html#ga12948478935f817218b64e1db3a8ebad">More...</a><br /></td></tr>
<tr class="separator:ga12948478935f817218b64e1db3a8ebad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga81c77d31aff72655977b658a9c37665e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga81c77d31aff72655977b658a9c37665e">pio_remove_program</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, const <a class="el" href="structpio__program.html">pio_program_t</a> *program, uint loaded_offset)</td></tr>
<tr class="memdesc:ga81c77d31aff72655977b658a9c37665e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Remove a program from a PIO instance's instruction memory.  <a href="group__hardware__pio.html#ga81c77d31aff72655977b658a9c37665e">More...</a><br /></td></tr>
<tr class="separator:ga81c77d31aff72655977b658a9c37665e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga850396a2a2925bbcc97247a629ca5bd2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga850396a2a2925bbcc97247a629ca5bd2">pio_clear_instruction_memory</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio)</td></tr>
<tr class="memdesc:ga850396a2a2925bbcc97247a629ca5bd2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clears all of a PIO instance's instruction memory.  <a href="group__hardware__pio.html#ga850396a2a2925bbcc97247a629ca5bd2">More...</a><br /></td></tr>
<tr class="separator:ga850396a2a2925bbcc97247a629ca5bd2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8bd15922f2a2f836650ebbda8425b438"><td class="memItemLeft" align="right" valign="top"><a id="a8bd15922f2a2f836650ebbda8425b438" name="a8bd15922f2a2f836650ebbda8425b438"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>pio_sm_init</b> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm, uint initial_pc, const <a class="el" href="structpio__sm__config.html">pio_sm_config</a> *config)</td></tr>
<tr class="separator:a8bd15922f2a2f836650ebbda8425b438"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa47ec4090dcdc251e44bf4e4cb89a7bc"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#gaa47ec4090dcdc251e44bf4e4cb89a7bc">pio_sm_set_enabled</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm, bool enabled)</td></tr>
<tr class="memdesc:gaa47ec4090dcdc251e44bf4e4cb89a7bc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable or disable a PIO state machine.  <a href="group__hardware__pio.html#gaa47ec4090dcdc251e44bf4e4cb89a7bc">More...</a><br /></td></tr>
<tr class="separator:gaa47ec4090dcdc251e44bf4e4cb89a7bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf726f77ee21f5373cadf064a4e0b4935"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#gaf726f77ee21f5373cadf064a4e0b4935">pio_set_sm_mask_enabled</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint32_t mask, bool enabled)</td></tr>
<tr class="memdesc:gaf726f77ee21f5373cadf064a4e0b4935"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable or disable multiple PIO state machines.  <a href="group__hardware__pio.html#gaf726f77ee21f5373cadf064a4e0b4935">More...</a><br /></td></tr>
<tr class="separator:gaf726f77ee21f5373cadf064a4e0b4935"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7b89b93dd0553c77538c70baf6a7e4f0"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga7b89b93dd0553c77538c70baf6a7e4f0">pio_sm_restart</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm)</td></tr>
<tr class="memdesc:ga7b89b93dd0553c77538c70baf6a7e4f0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Restart a state machine with a known state.  <a href="group__hardware__pio.html#ga7b89b93dd0553c77538c70baf6a7e4f0">More...</a><br /></td></tr>
<tr class="separator:ga7b89b93dd0553c77538c70baf6a7e4f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae3e115fd41d9ac29c7a13b0c213bc2cd"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#gae3e115fd41d9ac29c7a13b0c213bc2cd">pio_restart_sm_mask</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint32_t mask)</td></tr>
<tr class="memdesc:gae3e115fd41d9ac29c7a13b0c213bc2cd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Restart multiple state machine with a known state.  <a href="group__hardware__pio.html#gae3e115fd41d9ac29c7a13b0c213bc2cd">More...</a><br /></td></tr>
<tr class="separator:gae3e115fd41d9ac29c7a13b0c213bc2cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacd981b2206b02eb1c4573a0f328d7819"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#gacd981b2206b02eb1c4573a0f328d7819">pio_sm_clkdiv_restart</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm)</td></tr>
<tr class="memdesc:gacd981b2206b02eb1c4573a0f328d7819"><td class="mdescLeft">&#160;</td><td class="mdescRight">Restart a state machine's clock divider from a phase of 0.  <a href="group__hardware__pio.html#gacd981b2206b02eb1c4573a0f328d7819">More...</a><br /></td></tr>
<tr class="separator:gacd981b2206b02eb1c4573a0f328d7819"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga63e13f639ae50ee9cb8afeceba6bb118"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga63e13f639ae50ee9cb8afeceba6bb118">pio_clkdiv_restart_sm_mask</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint32_t mask)</td></tr>
<tr class="memdesc:ga63e13f639ae50ee9cb8afeceba6bb118"><td class="mdescLeft">&#160;</td><td class="mdescRight">Restart multiple state machines' clock dividers from a phase of 0.  <a href="group__hardware__pio.html#ga63e13f639ae50ee9cb8afeceba6bb118">More...</a><br /></td></tr>
<tr class="separator:ga63e13f639ae50ee9cb8afeceba6bb118"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac3797a9f7e80606152eb44af9ca96398"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#gac3797a9f7e80606152eb44af9ca96398">pio_enable_sm_mask_in_sync</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint32_t mask)</td></tr>
<tr class="memdesc:gac3797a9f7e80606152eb44af9ca96398"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable multiple PIO state machines synchronizing their clock dividers.  <a href="group__hardware__pio.html#gac3797a9f7e80606152eb44af9ca96398">More...</a><br /></td></tr>
<tr class="separator:gac3797a9f7e80606152eb44af9ca96398"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafe39a664c508e08ef4c74b7c3c38bc07"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#gafe39a664c508e08ef4c74b7c3c38bc07">pio_set_irq0_source_enabled</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, <a class="el" href="group__hardware__pio.html#gab9e9aed4bb165a040415ae342e0902fe">pio_interrupt_source_t</a> source, bool enabled)</td></tr>
<tr class="memdesc:gafe39a664c508e08ef4c74b7c3c38bc07"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable/Disable a single source on a PIO's IRQ 0.  <a href="group__hardware__pio.html#gafe39a664c508e08ef4c74b7c3c38bc07">More...</a><br /></td></tr>
<tr class="separator:gafe39a664c508e08ef4c74b7c3c38bc07"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4369e665ee8d2db58a83eccad65c917c"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga4369e665ee8d2db58a83eccad65c917c">pio_set_irq1_source_enabled</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, <a class="el" href="group__hardware__pio.html#gab9e9aed4bb165a040415ae342e0902fe">pio_interrupt_source_t</a> source, bool enabled)</td></tr>
<tr class="memdesc:ga4369e665ee8d2db58a83eccad65c917c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable/Disable a single source on a PIO's IRQ 1.  <a href="group__hardware__pio.html#ga4369e665ee8d2db58a83eccad65c917c">More...</a><br /></td></tr>
<tr class="separator:ga4369e665ee8d2db58a83eccad65c917c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga81259bc71fd3bd81b96e47f9f4ea7b67"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga81259bc71fd3bd81b96e47f9f4ea7b67">pio_set_irq0_source_mask_enabled</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint32_t source_mask, bool enabled)</td></tr>
<tr class="memdesc:ga81259bc71fd3bd81b96e47f9f4ea7b67"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable/Disable multiple sources on a PIO's IRQ 0.  <a href="group__hardware__pio.html#ga81259bc71fd3bd81b96e47f9f4ea7b67">More...</a><br /></td></tr>
<tr class="separator:ga81259bc71fd3bd81b96e47f9f4ea7b67"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae39150dd6910d2776484526059911b79"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#gae39150dd6910d2776484526059911b79">pio_set_irq1_source_mask_enabled</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint32_t source_mask, bool enabled)</td></tr>
<tr class="memdesc:gae39150dd6910d2776484526059911b79"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable/Disable multiple sources on a PIO's IRQ 1.  <a href="group__hardware__pio.html#gae39150dd6910d2776484526059911b79">More...</a><br /></td></tr>
<tr class="separator:gae39150dd6910d2776484526059911b79"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga06d0fd918247a86e8394afac67cf6992"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga06d0fd918247a86e8394afac67cf6992">pio_set_irqn_source_enabled</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint irq_index, <a class="el" href="group__hardware__pio.html#gab9e9aed4bb165a040415ae342e0902fe">pio_interrupt_source_t</a> source, bool enabled)</td></tr>
<tr class="memdesc:ga06d0fd918247a86e8394afac67cf6992"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable/Disable a single source on a PIO's specified (0/1) IRQ index.  <a href="group__hardware__pio.html#ga06d0fd918247a86e8394afac67cf6992">More...</a><br /></td></tr>
<tr class="separator:ga06d0fd918247a86e8394afac67cf6992"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafc173eb3cb980ed3c823384e42e265bb"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#gafc173eb3cb980ed3c823384e42e265bb">pio_set_irqn_source_mask_enabled</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint irq_index, uint32_t source_mask, bool enabled)</td></tr>
<tr class="memdesc:gafc173eb3cb980ed3c823384e42e265bb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable/Disable multiple sources on a PIO's specified (0/1) IRQ index.  <a href="group__hardware__pio.html#gafc173eb3cb980ed3c823384e42e265bb">More...</a><br /></td></tr>
<tr class="separator:gafc173eb3cb980ed3c823384e42e265bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa92c20b2d08f3b8a6bc35cd602a092e4"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#gaa92c20b2d08f3b8a6bc35cd602a092e4">pio_interrupt_get</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint pio_interrupt_num)</td></tr>
<tr class="memdesc:gaa92c20b2d08f3b8a6bc35cd602a092e4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determine if a particular PIO interrupt is set.  <a href="group__hardware__pio.html#gaa92c20b2d08f3b8a6bc35cd602a092e4">More...</a><br /></td></tr>
<tr class="separator:gaa92c20b2d08f3b8a6bc35cd602a092e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6f650eb98640eac2346ff26b46dc378b"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga6f650eb98640eac2346ff26b46dc378b">pio_interrupt_clear</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint pio_interrupt_num)</td></tr>
<tr class="memdesc:ga6f650eb98640eac2346ff26b46dc378b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clear a particular PIO interrupt.  <a href="group__hardware__pio.html#ga6f650eb98640eac2346ff26b46dc378b">More...</a><br /></td></tr>
<tr class="separator:ga6f650eb98640eac2346ff26b46dc378b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9c0ea409da4fcb98586120b575921c31"><td class="memItemLeft" align="right" valign="top">static uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga9c0ea409da4fcb98586120b575921c31">pio_sm_get_pc</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm)</td></tr>
<tr class="memdesc:ga9c0ea409da4fcb98586120b575921c31"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the current program counter for a state machine.  <a href="group__hardware__pio.html#ga9c0ea409da4fcb98586120b575921c31">More...</a><br /></td></tr>
<tr class="separator:ga9c0ea409da4fcb98586120b575921c31"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga800d8949b5d04dfe635d4c12241f0cd2"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga800d8949b5d04dfe635d4c12241f0cd2">pio_sm_exec</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm, uint instr)</td></tr>
<tr class="memdesc:ga800d8949b5d04dfe635d4c12241f0cd2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Immediately execute an instruction on a state machine.  <a href="group__hardware__pio.html#ga800d8949b5d04dfe635d4c12241f0cd2">More...</a><br /></td></tr>
<tr class="separator:ga800d8949b5d04dfe635d4c12241f0cd2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaaa44e504a2abd8ca2c1ee2db91d0652b"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#gaaa44e504a2abd8ca2c1ee2db91d0652b">pio_sm_is_exec_stalled</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm)</td></tr>
<tr class="memdesc:gaaa44e504a2abd8ca2c1ee2db91d0652b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determine if an instruction set by <a class="el" href="group__hardware__pio.html#ga800d8949b5d04dfe635d4c12241f0cd2" title="Immediately execute an instruction on a state machine.">pio_sm_exec()</a> is stalled executing.  <a href="group__hardware__pio.html#gaaa44e504a2abd8ca2c1ee2db91d0652b">More...</a><br /></td></tr>
<tr class="separator:gaaa44e504a2abd8ca2c1ee2db91d0652b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1bf1b296713b76e19b87b59b84136b2c"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga1bf1b296713b76e19b87b59b84136b2c">pio_sm_exec_wait_blocking</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm, uint instr)</td></tr>
<tr class="memdesc:ga1bf1b296713b76e19b87b59b84136b2c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Immediately execute an instruction on a state machine and wait for it to complete.  <a href="group__hardware__pio.html#ga1bf1b296713b76e19b87b59b84136b2c">More...</a><br /></td></tr>
<tr class="separator:ga1bf1b296713b76e19b87b59b84136b2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga74a681208957ab2bc8c8aafff9bb9f7c"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga74a681208957ab2bc8c8aafff9bb9f7c">pio_sm_set_wrap</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm, uint wrap_target, uint wrap)</td></tr>
<tr class="memdesc:ga74a681208957ab2bc8c8aafff9bb9f7c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the current wrap configuration for a state machine.  <a href="group__hardware__pio.html#ga74a681208957ab2bc8c8aafff9bb9f7c">More...</a><br /></td></tr>
<tr class="separator:ga74a681208957ab2bc8c8aafff9bb9f7c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7f0190e662c5b6e24d91044b42010ffc"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga7f0190e662c5b6e24d91044b42010ffc">pio_sm_set_out_pins</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm, uint out_base, uint out_count)</td></tr>
<tr class="memdesc:ga7f0190e662c5b6e24d91044b42010ffc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the current 'out' pins for a state machine.  <a href="group__hardware__pio.html#ga7f0190e662c5b6e24d91044b42010ffc">More...</a><br /></td></tr>
<tr class="separator:ga7f0190e662c5b6e24d91044b42010ffc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacaf6ee284dc834fbb742d1eef6180e6c"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#gacaf6ee284dc834fbb742d1eef6180e6c">pio_sm_set_set_pins</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm, uint set_base, uint set_count)</td></tr>
<tr class="memdesc:gacaf6ee284dc834fbb742d1eef6180e6c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the current 'set' pins for a state machine.  <a href="group__hardware__pio.html#gacaf6ee284dc834fbb742d1eef6180e6c">More...</a><br /></td></tr>
<tr class="separator:gacaf6ee284dc834fbb742d1eef6180e6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaef50ef92f7ea0666dffe939c0b3fd24c"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#gaef50ef92f7ea0666dffe939c0b3fd24c">pio_sm_set_in_pins</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm, uint in_base)</td></tr>
<tr class="memdesc:gaef50ef92f7ea0666dffe939c0b3fd24c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the current 'in' pins for a state machine.  <a href="group__hardware__pio.html#gaef50ef92f7ea0666dffe939c0b3fd24c">More...</a><br /></td></tr>
<tr class="separator:gaef50ef92f7ea0666dffe939c0b3fd24c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga87cb36afe5783e2e92bf528b1d50ea07"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga87cb36afe5783e2e92bf528b1d50ea07">pio_sm_set_sideset_pins</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm, uint sideset_base)</td></tr>
<tr class="memdesc:ga87cb36afe5783e2e92bf528b1d50ea07"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the current 'sideset' pins for a state machine.  <a href="group__hardware__pio.html#ga87cb36afe5783e2e92bf528b1d50ea07">More...</a><br /></td></tr>
<tr class="separator:ga87cb36afe5783e2e92bf528b1d50ea07"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga97b135c9016b91fbf237c93313d25fd4"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga97b135c9016b91fbf237c93313d25fd4">pio_sm_set_jmp_pin</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm, uint pin)</td></tr>
<tr class="memdesc:ga97b135c9016b91fbf237c93313d25fd4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the 'jmp' pin for a state machine.  <a href="group__hardware__pio.html#ga97b135c9016b91fbf237c93313d25fd4">More...</a><br /></td></tr>
<tr class="separator:ga97b135c9016b91fbf237c93313d25fd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab48b30da795dcd73b4a998d67a4af235"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#gab48b30da795dcd73b4a998d67a4af235">pio_sm_put</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm, uint32_t data)</td></tr>
<tr class="memdesc:gab48b30da795dcd73b4a998d67a4af235"><td class="mdescLeft">&#160;</td><td class="mdescRight">Write a word of data to a state machine's TX FIFO.  <a href="group__hardware__pio.html#gab48b30da795dcd73b4a998d67a4af235">More...</a><br /></td></tr>
<tr class="separator:gab48b30da795dcd73b4a998d67a4af235"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6fe6273d63665fdb16964790d55709fa"><td class="memItemLeft" align="right" valign="top">static uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga6fe6273d63665fdb16964790d55709fa">pio_sm_get</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm)</td></tr>
<tr class="memdesc:ga6fe6273d63665fdb16964790d55709fa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Read a word of data from a state machine's RX FIFO.  <a href="group__hardware__pio.html#ga6fe6273d63665fdb16964790d55709fa">More...</a><br /></td></tr>
<tr class="separator:ga6fe6273d63665fdb16964790d55709fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga71e388315eb6a77a6560b77ec13145a4"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga71e388315eb6a77a6560b77ec13145a4">pio_sm_is_rx_fifo_full</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm)</td></tr>
<tr class="memdesc:ga71e388315eb6a77a6560b77ec13145a4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determine if a state machine's RX FIFO is full.  <a href="group__hardware__pio.html#ga71e388315eb6a77a6560b77ec13145a4">More...</a><br /></td></tr>
<tr class="separator:ga71e388315eb6a77a6560b77ec13145a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gadf404ba44b7f83e79fd6b57b3e2c89df"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#gadf404ba44b7f83e79fd6b57b3e2c89df">pio_sm_is_rx_fifo_empty</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm)</td></tr>
<tr class="memdesc:gadf404ba44b7f83e79fd6b57b3e2c89df"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determine if a state machine's RX FIFO is empty.  <a href="group__hardware__pio.html#gadf404ba44b7f83e79fd6b57b3e2c89df">More...</a><br /></td></tr>
<tr class="separator:gadf404ba44b7f83e79fd6b57b3e2c89df"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8fa0b87fde0db10be2934de542f9d6c2"><td class="memItemLeft" align="right" valign="top">static uint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga8fa0b87fde0db10be2934de542f9d6c2">pio_sm_get_rx_fifo_level</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm)</td></tr>
<tr class="memdesc:ga8fa0b87fde0db10be2934de542f9d6c2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the number of elements currently in a state machine's RX FIFO.  <a href="group__hardware__pio.html#ga8fa0b87fde0db10be2934de542f9d6c2">More...</a><br /></td></tr>
<tr class="separator:ga8fa0b87fde0db10be2934de542f9d6c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3dbf64343a2fba75549ee7b0351f7e52"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga3dbf64343a2fba75549ee7b0351f7e52">pio_sm_is_tx_fifo_full</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm)</td></tr>
<tr class="memdesc:ga3dbf64343a2fba75549ee7b0351f7e52"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determine if a state machine's TX FIFO is full.  <a href="group__hardware__pio.html#ga3dbf64343a2fba75549ee7b0351f7e52">More...</a><br /></td></tr>
<tr class="separator:ga3dbf64343a2fba75549ee7b0351f7e52"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gadf4ae3f4a334c1dcac1b62b148508bf2"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#gadf4ae3f4a334c1dcac1b62b148508bf2">pio_sm_is_tx_fifo_empty</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm)</td></tr>
<tr class="memdesc:gadf4ae3f4a334c1dcac1b62b148508bf2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determine if a state machine's TX FIFO is empty.  <a href="group__hardware__pio.html#gadf4ae3f4a334c1dcac1b62b148508bf2">More...</a><br /></td></tr>
<tr class="separator:gadf4ae3f4a334c1dcac1b62b148508bf2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga009b3f44f112208114972c32546dfddb"><td class="memItemLeft" align="right" valign="top">static uint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga009b3f44f112208114972c32546dfddb">pio_sm_get_tx_fifo_level</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm)</td></tr>
<tr class="memdesc:ga009b3f44f112208114972c32546dfddb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the number of elements currently in a state machine's TX FIFO.  <a href="group__hardware__pio.html#ga009b3f44f112208114972c32546dfddb">More...</a><br /></td></tr>
<tr class="separator:ga009b3f44f112208114972c32546dfddb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaee8bfc3409cb8d93cccdeda3961bc377"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#gaee8bfc3409cb8d93cccdeda3961bc377">pio_sm_put_blocking</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm, uint32_t data)</td></tr>
<tr class="memdesc:gaee8bfc3409cb8d93cccdeda3961bc377"><td class="mdescLeft">&#160;</td><td class="mdescRight">Write a word of data to a state machine's TX FIFO, blocking if the FIFO is full.  <a href="group__hardware__pio.html#gaee8bfc3409cb8d93cccdeda3961bc377">More...</a><br /></td></tr>
<tr class="separator:gaee8bfc3409cb8d93cccdeda3961bc377"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga12650f49c110cb1bfd8092ab67210885"><td class="memItemLeft" align="right" valign="top">static uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga12650f49c110cb1bfd8092ab67210885">pio_sm_get_blocking</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm)</td></tr>
<tr class="memdesc:ga12650f49c110cb1bfd8092ab67210885"><td class="mdescLeft">&#160;</td><td class="mdescRight">Read a word of data from a state machine's RX FIFO, blocking if the FIFO is empty.  <a href="group__hardware__pio.html#ga12650f49c110cb1bfd8092ab67210885">More...</a><br /></td></tr>
<tr class="separator:ga12650f49c110cb1bfd8092ab67210885"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga46af88f03a0c5abe4d55d45c5b2ccfb7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga46af88f03a0c5abe4d55d45c5b2ccfb7">pio_sm_drain_tx_fifo</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm)</td></tr>
<tr class="memdesc:ga46af88f03a0c5abe4d55d45c5b2ccfb7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Empty out a state machine's TX FIFO.  <a href="group__hardware__pio.html#ga46af88f03a0c5abe4d55d45c5b2ccfb7">More...</a><br /></td></tr>
<tr class="separator:ga46af88f03a0c5abe4d55d45c5b2ccfb7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa9d1d18a7decd0068b8a2a9159c9fd34"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#gaa9d1d18a7decd0068b8a2a9159c9fd34">pio_sm_set_clkdiv_int_frac</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm, uint16_t div_int, uint8_t div_frac)</td></tr>
<tr class="memdesc:gaa9d1d18a7decd0068b8a2a9159c9fd34"><td class="mdescLeft">&#160;</td><td class="mdescRight">set the current clock divider for a state machine using a 16:8 fraction  <a href="group__hardware__pio.html#gaa9d1d18a7decd0068b8a2a9159c9fd34">More...</a><br /></td></tr>
<tr class="separator:gaa9d1d18a7decd0068b8a2a9159c9fd34"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga88df92ae6a4ef3320b6565117aca885b"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga88df92ae6a4ef3320b6565117aca885b">pio_sm_set_clkdiv</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm, float div)</td></tr>
<tr class="memdesc:ga88df92ae6a4ef3320b6565117aca885b"><td class="mdescLeft">&#160;</td><td class="mdescRight">set the current clock divider for a state machine  <a href="group__hardware__pio.html#ga88df92ae6a4ef3320b6565117aca885b">More...</a><br /></td></tr>
<tr class="separator:ga88df92ae6a4ef3320b6565117aca885b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab4cb36e85ee8807b51fd03021adff9ca"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#gab4cb36e85ee8807b51fd03021adff9ca">pio_sm_clear_fifos</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm)</td></tr>
<tr class="memdesc:gab4cb36e85ee8807b51fd03021adff9ca"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clear a state machine's TX and RX FIFOs.  <a href="group__hardware__pio.html#gab4cb36e85ee8807b51fd03021adff9ca">More...</a><br /></td></tr>
<tr class="separator:gab4cb36e85ee8807b51fd03021adff9ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1286f306263b413a8002c9db2b433d8b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga1286f306263b413a8002c9db2b433d8b">pio_sm_set_pins</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm, uint32_t pin_values)</td></tr>
<tr class="memdesc:ga1286f306263b413a8002c9db2b433d8b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Use a state machine to set a value on all pins for the PIO instance.  <a href="group__hardware__pio.html#ga1286f306263b413a8002c9db2b433d8b">More...</a><br /></td></tr>
<tr class="separator:ga1286f306263b413a8002c9db2b433d8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga963167ca42f67f79ec5de6b47d6027d5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga963167ca42f67f79ec5de6b47d6027d5">pio_sm_set_pins_with_mask</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm, uint32_t pin_values, uint32_t pin_mask)</td></tr>
<tr class="memdesc:ga963167ca42f67f79ec5de6b47d6027d5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Use a state machine to set a value on multiple pins for the PIO instance.  <a href="group__hardware__pio.html#ga963167ca42f67f79ec5de6b47d6027d5">More...</a><br /></td></tr>
<tr class="separator:ga963167ca42f67f79ec5de6b47d6027d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8269f1ef4cb1e4b3b957d5f1fa6fc623"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga8269f1ef4cb1e4b3b957d5f1fa6fc623">pio_sm_set_pindirs_with_mask</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm, uint32_t pin_dirs, uint32_t pin_mask)</td></tr>
<tr class="memdesc:ga8269f1ef4cb1e4b3b957d5f1fa6fc623"><td class="mdescLeft">&#160;</td><td class="mdescRight">Use a state machine to set the pin directions for multiple pins for the PIO instance.  <a href="group__hardware__pio.html#ga8269f1ef4cb1e4b3b957d5f1fa6fc623">More...</a><br /></td></tr>
<tr class="separator:ga8269f1ef4cb1e4b3b957d5f1fa6fc623"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf5c965ef1ca21684630c8be2cf3e52e7"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#gaf5c965ef1ca21684630c8be2cf3e52e7">pio_sm_set_consecutive_pindirs</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm, uint pins_base, uint pin_count, bool is_out)</td></tr>
<tr class="memdesc:gaf5c965ef1ca21684630c8be2cf3e52e7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Use a state machine to set the same pin direction for multiple consecutive pins for the PIO instance.  <a href="group__hardware__pio.html#gaf5c965ef1ca21684630c8be2cf3e52e7">More...</a><br /></td></tr>
<tr class="separator:gaf5c965ef1ca21684630c8be2cf3e52e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa75bc8b2060929ec2b2599da8081a99b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#gaa75bc8b2060929ec2b2599da8081a99b">pio_sm_claim</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm)</td></tr>
<tr class="memdesc:gaa75bc8b2060929ec2b2599da8081a99b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Mark a state machine as used.  <a href="group__hardware__pio.html#gaa75bc8b2060929ec2b2599da8081a99b">More...</a><br /></td></tr>
<tr class="separator:gaa75bc8b2060929ec2b2599da8081a99b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4c25ad61f15a76499997102e126cbdfd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga4c25ad61f15a76499997102e126cbdfd">pio_claim_sm_mask</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm_mask)</td></tr>
<tr class="memdesc:ga4c25ad61f15a76499997102e126cbdfd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Mark multiple state machines as used.  <a href="group__hardware__pio.html#ga4c25ad61f15a76499997102e126cbdfd">More...</a><br /></td></tr>
<tr class="separator:ga4c25ad61f15a76499997102e126cbdfd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga62328112de918932e4ed0955ce0054ab"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga62328112de918932e4ed0955ce0054ab">pio_sm_unclaim</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm)</td></tr>
<tr class="memdesc:ga62328112de918932e4ed0955ce0054ab"><td class="mdescLeft">&#160;</td><td class="mdescRight">Mark a state machine as no longer used.  <a href="group__hardware__pio.html#ga62328112de918932e4ed0955ce0054ab">More...</a><br /></td></tr>
<tr class="separator:ga62328112de918932e4ed0955ce0054ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga604c071438065c46c9f4f21bdb61befd"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga604c071438065c46c9f4f21bdb61befd">pio_claim_unused_sm</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, bool required)</td></tr>
<tr class="memdesc:ga604c071438065c46c9f4f21bdb61befd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Claim a free state machine on a PIO instance.  <a href="group__hardware__pio.html#ga604c071438065c46c9f4f21bdb61befd">More...</a><br /></td></tr>
<tr class="separator:ga604c071438065c46c9f4f21bdb61befd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga699fb7272e3cb5ab76a84fbf3640325d"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga699fb7272e3cb5ab76a84fbf3640325d">pio_sm_is_claimed</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm)</td></tr>
<tr class="memdesc:ga699fb7272e3cb5ab76a84fbf3640325d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determine if a PIO state machine is claimed.  <a href="group__hardware__pio.html#ga699fb7272e3cb5ab76a84fbf3640325d">More...</a><br /></td></tr>
<tr class="separator:ga699fb7272e3cb5ab76a84fbf3640325d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga03abf744baa28e22a46fcf81452c47cf"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga03abf744baa28e22a46fcf81452c47cf">pio_claim_free_sm_and_add_program</a> (const <a class="el" href="structpio__program.html">pio_program_t</a> *program, <a class="el" href="structpio__hw__t.html">PIO</a> *pio, uint *sm, uint *offset)</td></tr>
<tr class="memdesc:ga03abf744baa28e22a46fcf81452c47cf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Finds a PIO and statemachine and adds a program into PIO memory.  <a href="group__hardware__pio.html#ga03abf744baa28e22a46fcf81452c47cf">More...</a><br /></td></tr>
<tr class="separator:ga03abf744baa28e22a46fcf81452c47cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga53c3bbe939b3c58585d0e19ffe91e18e"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga53c3bbe939b3c58585d0e19ffe91e18e">pio_claim_free_sm_and_add_program_for_gpio_range</a> (const <a class="el" href="structpio__program.html">pio_program_t</a> *program, <a class="el" href="structpio__hw__t.html">PIO</a> *pio, uint *sm, uint *offset, uint gpio_base, uint gpio_count, bool set_gpio_base)</td></tr>
<tr class="memdesc:ga53c3bbe939b3c58585d0e19ffe91e18e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Finds a PIO and statemachine and adds a program into PIO memory.  <a href="group__hardware__pio.html#ga53c3bbe939b3c58585d0e19ffe91e18e">More...</a><br /></td></tr>
<tr class="separator:ga53c3bbe939b3c58585d0e19ffe91e18e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa8178ef68166e58260da3989bc5f06bd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#gaa8178ef68166e58260da3989bc5f06bd">pio_remove_program_and_unclaim_sm</a> (const <a class="el" href="structpio__program.html">pio_program_t</a> *program, <a class="el" href="structpio__hw__t.html">PIO</a> pio, uint sm, uint offset)</td></tr>
<tr class="memdesc:gaa8178ef68166e58260da3989bc5f06bd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes a program from PIO memory and unclaims the state machine.  <a href="group__hardware__pio.html#gaa8178ef68166e58260da3989bc5f06bd">More...</a><br /></td></tr>
<tr class="separator:gaa8178ef68166e58260da3989bc5f06bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga29b350d20174699f5594fc46a35ca699"><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga29b350d20174699f5594fc46a35ca699">pio_get_irq_num</a> (<a class="el" href="structpio__hw__t.html">PIO</a> pio, uint irqn)</td></tr>
<tr class="memdesc:ga29b350d20174699f5594fc46a35ca699"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an IRQ for a PIO hardware instance.  <a href="group__hardware__pio.html#ga29b350d20174699f5594fc46a35ca699">More...</a><br /></td></tr>
<tr class="separator:ga29b350d20174699f5594fc46a35ca699"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga89d26de56d58a6a1022dba7f21e84b4e"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="group__hardware__pio.html#gab9e9aed4bb165a040415ae342e0902fe">pio_interrupt_source_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#ga89d26de56d58a6a1022dba7f21e84b4e">pio_get_tx_fifo_not_full_interrupt_source</a> (uint sm)</td></tr>
<tr class="memdesc:ga89d26de56d58a6a1022dba7f21e84b4e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the interrupt source for a state machines TX FIFO not full interrupt.  <a href="group__hardware__pio.html#ga89d26de56d58a6a1022dba7f21e84b4e">More...</a><br /></td></tr>
<tr class="separator:ga89d26de56d58a6a1022dba7f21e84b4e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad821de9c14a966fc5c16321ed5df92b4"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="group__hardware__pio.html#gab9e9aed4bb165a040415ae342e0902fe">pio_interrupt_source_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hardware__pio.html#gad821de9c14a966fc5c16321ed5df92b4">pio_get_rx_fifo_not_empty_interrupt_source</a> (uint sm)</td></tr>
<tr class="memdesc:gad821de9c14a966fc5c16321ed5df92b4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the interrupt source for a state machines RX FIFO not empty interrupt.  <a href="group__hardware__pio.html#gad821de9c14a966fc5c16321ed5df92b4">More...</a><br /></td></tr>
<tr class="separator:gad821de9c14a966fc5c16321ed5df92b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->

	<script src="main.js"></script>
</body>
</html>
